package com.liuweiheng.base.utils;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

import java.util.HashMap;
import java.util.Map;

/**
 * JSON工具类
 *
 * @author lwh
 * @date 2021/11/27
 */
public class JsonUtil {

    /**
     * json转字符串（带转义符\且两边带双引号)
     * @param json 需要转化的json对象
     * @return json字符串
     */
    public static String toJsonString(Object json) {
        if (null == json) { return ""; }

        String jsonStr;

        Map<String, String> map = new HashMap<>(1);
        ObjectMapper om = new ObjectMapper();
        map.put("JSON", json.toString());

        try {
            jsonStr = om.writeValueAsString(map.get("JSON"));
            jsonStr = jsonStr.substring(1, jsonStr.length() - 1);
        } catch (JsonProcessingException e) {
            e.printStackTrace();
            return "";
        }

        return jsonStr;
    }

}
